using BackOffice.Application.DTOs;

namespace BackOffice.Application.Services;

public interface ILogService
{
    Task<object> GetLogsAsync(DateTime? startDate, DateTime? endDate, string? username, string? action, string? level = null, int page = 1, int pageSize = 20);
    Task<object> RecordLogAsync(LogRecordDto dto);
    Task<byte[]> ExportLogsAsync(DateTime? startDate, DateTime? endDate, string? level = null);
    Task<object> CleanLogsAsync(DateTime beforeDate);
    Task<object> GetLogStatisticsAsync();
    Task<object> GetLogsByLevelAsync(string level, int page = 1, int pageSize = 20);
} 